home *** CD-ROM | disk | FTP | other *** search
/ APC & TCP 4 / APC & TCP 4.iso / games / publicdomain / m / madfactory / maded.h < prev    next >
C/C++ Source or Header  |  1994-05-13  |  27KB  |  1,093 lines

  1. /*********************************
  2. Headerfile for Mad Factory Level Editor
  3.     by Roman Stumm in 1989!
  4. UPDATE: 16/07/89
  5. Vorcompilieren:
  6. rename MadED.h mad2.c
  7. cc mad2.c -S -E200 +hdf1:MadED.PRE +L
  8. copy mad2.o df1:MadED.lib
  9. **********************************/
  10. #include <intuition/intuitionbase.h>
  11. #include <graphics/sprite.h>
  12. #include <exec/memory.h>
  13. #include <libraries/dos.h>
  14. #include <stdio.h>
  15. #include "df1:MadGadgets.h"
  16. #include "df1:MadMenus.h"
  17. #include <functions.h>
  18.  
  19. struct IntuitionBase *IntuitionBase;
  20. struct GfxBase *GfxBase;
  21. struct Window *win, *win2;
  22. struct Screen *scr;
  23. struct ViewPort *vp;
  24. struct RastPort *rp, *rp2;
  25. struct IntuiMessage *msg;
  26. ULONG class, DosBase;
  27. USHORT code;
  28. SHORT x[2], y[2]; /* Globale Variablen */
  29. SHORT rx, ry, levelnr=0;
  30. SHORT grow, frage, nextfrag, nextlev;
  31. SHORT art[5], fx[5], fy[5], sx[5];
  32. SHORT sy[5], zx[5], zy[5];
  33. SHORT rfy[5], rfx[5];
  34. BYTE bild[22][18];
  35.  
  36. struct NewWindow nw = {
  37. 0, 0, 320, 256, 17, 1, RAWKEY|MENUPICK|MOUSEBUTTONS,
  38. ACTIVATE|REPORTMOUSE|BORDERLESS|SMART_REFRESH,
  39. NULL, NULL, " Mad Factory V3.0 Level Editor by R.S. ",   
  40. NULL, NULL, 0, 0, 0, 0, CUSTOMSCREEN
  41. };
  42. struct NewScreen ns = {
  43. 0, 0, 320, 256, 6, 0, 0,
  44. EXTRA_HALFBRITE, CUSTOMSCREEN,
  45. NULL, NULL, NULL, NULL
  46. };
  47. struct NewWindow nw2 = {
  48. 60, 32, 220, 160, 0, 1,
  49. NULL, WINDOWCLOSE|NOCAREREFRESH|ACTIVATE|RMBTRAP,
  50. NULL, NULL, NULL, NULL, NULL, 0, 0, 0, 0, CUSTOMSCREEN
  51. };
  52.  
  53. /* leer  */
  54. USHORT data0[] = {
  55. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  56. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  57. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  58. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  59. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  60. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  61. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  62. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  63. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  64. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  65. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  66. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 
  67. };
  68.  
  69. /* ausgang  */
  70. USHORT data1[] = {
  71. 0xFF0, 0x1FF8, 0x3FFC, 0x3FFC, 
  72. 0x7FFE, 0x7FFE, 0x7FFE, 0x7FFE, 
  73. 0x7FFE, 0x7FFE, 0x7FFE, 0x7FFE, 
  74. 0x7FFE, 0x7FFE, 0x7FFE, 0x7FFE, 
  75. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  76. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  77. 0xFF0, 0x1FF8, 0x3FFC, 0x3FFC, 
  78. 0x7FFE, 0x7FFE, 0x7FFE, 0x7FFE, 
  79. 0x7FFE, 0x7FFE, 0x7FFE, 0x7FFE, 
  80. 0x7FFE, 0x7FFE, 0x7FFE, 0x7FFE, 
  81. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  82. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  83. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  84. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  85. 0xFF0, 0x1008, 0x2004, 0x2004, 
  86. 0x4002, 0x4002, 0x4002, 0x4002, 
  87. 0x4002, 0x4002, 0x4002, 0x4002, 
  88. 0x4002, 0x4002, 0x4002, 0x4002 
  89. };
  90.  
  91. /* bomb  */
  92. USHORT data2[] = {
  93. 0xC3C0, 
  94. 0x7FF0, 0x1FF8, 
  95. 0x3FFC, 0x7FFE, 
  96. 0x7FFE, 0xFFFF, 
  97. 0xFFFF, 0xFFFF, 
  98. 0xFFFF, 0x7FFE, 
  99. 0x7FFE, 0x3FFC, 
  100. 0x1FF8, 0xFF0, 0x3C0, 
  101. 0xC000, 0x7000, 0x1800, 0xC00, 
  102. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  103. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  104. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  105. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  106. 0xC000, 0x73C0, 0x1FE0, 0x1FC0, 
  107. 0x3F80, 0x3E00, 0x1800, 0x0, 
  108. 0x0, 0x0, 0x0, 0x0, 
  109. 0x0, 0x0, 0x0, 0x0, 
  110. 0x3C0, 0xC30, 0x18, 0x203C, 
  111. 0x407E, 0x41FE, 0xE7FF, 0xFFFF, 
  112. 0xFFFF, 0xFFFF, 0x7FFE, 0x7FFE,
  113. 0x3FFC, 0x1FF8, 0xFF0, 0x3C0, 
  114. 0x3C0, 0xC30, 0x8, 0x2004, 
  115. 0x4002, 0x4002, 0x8001, 0x8001, 
  116. 0x8001, 0x8001, 0x4002, 0x4002, 
  117. 0x2004, 0x1008, 0xC30, 0x3C0 
  118. };
  119.  
  120. /* diamand  */
  121. USHORT data3[] = {
  122. 0x0, 0x100, 0x280, 0x540, 
  123. 0x920, 0x1290, 0x2288, 0x4444, 
  124. 0x8822, 0x4444, 0x2288, 0x1290, 
  125. 0x920, 0x540, 0x280, 0x100, 
  126. 0x0, 0x180, 0x3C0, 0x7E0, 
  127. 0xFF0, 0x1FF8, 0x3FFC, 0x7FFE, 
  128. 0xFFFF, 0x7FFE, 0x3FFC, 0x1FF8, 
  129. 0xFF0, 0x7E0, 0x3C0, 0x180, 
  130. 0x0, 0x180, 0x3C0, 0x7E0, 
  131. 0xFF0, 0x1FF8, 0x3FFC, 0x7FFE,
  132. 0xFFFF, 0x7FFE, 0x3FFC, 0x1FF8, 
  133. 0xFF0, 0x7E0, 0x3C0, 0x180, 
  134. 0x0, 0x0, 0x0, 0x0, 
  135. 0x0, 0x0, 0x0, 0x0, 
  136. 0x0, 0x0, 0x0, 0x0, 
  137. 0x0, 0x0, 0x0, 0x0, 
  138. 0x0, 0x0, 0x0, 0x0, 
  139. 0x0, 0x0, 0x0, 0x0, 
  140. 0x0, 0x0, 0x0, 0x0, 
  141. 0x0, 0x0, 0x0, 0x0, 
  142. 0x0, 0x80, 0x40, 0x20, 
  143. 0x10, 0x8, 0x4, 0x2, 
  144. 0x1, 0x2, 0x4, 0x8, 
  145. 0x10, 0x20, 0x40, 0x80 
  146. };
  147.  
  148. /* key  */
  149. USHORT data4[] = {
  150. 0x1E0, 0x7F8, 0xF3C, 0x1E1E, 
  151. 0x1E1E, 0x1E1E, 0x1E1E, 0xF3C, 
  152. 0x7F8, 0x1E0, 0x1E0, 0x1E0, 
  153. 0x1E0, 0x1F8, 0x1E0, 0x1FC, 
  154. 0x1E0, 0x7F8, 0xF3C, 0x1E1E, 
  155. 0x1E1E, 0x1E1E, 0x1E1E, 0xF3C, 
  156. 0x7F8, 0x1E0, 0x1E0, 0x1E0, 
  157. 0x1E0, 0x1F8, 0x1E0, 0x1FC, 
  158. 0x0, 0x0, 0x0, 0x0, 
  159. 0x0, 0x0, 0x0, 0x0, 
  160. 0x0, 0x0, 0x0, 0x0, 
  161. 0x0, 0x0, 0x0, 0x0, 
  162. 0x1E0, 0x7F8, 0xF3C, 0x1E1E, 
  163. 0x1E1E, 0x1E1E, 0x1E1E, 0xF3C, 
  164. 0x7F8, 0x1E0, 0x1E0, 0x1E0, 
  165. 0x1E0, 0x1F8, 0x1E0, 0x1FC, 
  166. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  167. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  168. 0x60, 0x18, 0x30C, 0x606, 
  169. 0x606, 0x606, 0x606, 0x30C, 
  170. 0x18, 0x60, 0x60, 0x60, 
  171. 0x60, 0x18, 0x60, 0xC 
  172. };
  173.  
  174. /* glühbirne  */
  175. USHORT data5[] = {
  176. 0x0, 0x7C0, 0xFE0, 0x1FF0, 
  177. 0x3FF8, 0x3FF8, 0x3FF8, 0x3FF8, 
  178. 0x1FF0, 0xFE0, 0x0, 0x0, 
  179. 0x0, 0x0, 0x0, 0x0, 
  180. 0x0, 0x7C0, 0xFE0, 0x1FF0, 
  181. 0x3FF8, 0x3FF8, 0x3FF8, 0x3FF8, 
  182. 0x1FF0, 0xFE0, 0x0, 0x0, 
  183. 0x0, 0x0, 0x0, 0x0, 
  184. 0x0, 0x0, 0x0, 0x0, 
  185. 0x0, 0x0, 0x0, 0x0, 
  186. 0x0, 0x0, 0x7C0, 0x7C0, 
  187. 0x7C0, 0x7C0, 0x7C0, 0x380, 
  188. 0x0, 0x7C0, 0xFE0, 0x1FF0, 
  189. 0x3FF8, 0x3FF8, 0x3FF8, 0x3FF8, 
  190. 0x1FF0, 0xFE0, 0x7C0, 0x7C0, 
  191. 0x7C0, 0x7C0, 0x7C0, 0x380, 
  192. 0x0, 0x0, 0x0, 0x0, 
  193. 0x0, 0x0, 0x0, 0x0, 
  194. 0x0, 0x0, 0x0, 0x0, 
  195. 0x0, 0x0, 0x0, 0x0, 
  196. 0x0, 0x0, 0x0, 0x0, 
  197. 0x0, 0x0, 0x0, 0x0, 
  198. 0x0, 0x0, 0x7C0, 0x7C0,
  199. 0x7C0, 0x7C0, 0x7C0, 0x380 
  200. };
  201.  
  202. /* frage  */
  203. USHORT data6[] = {
  204. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  205. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  206. 0x1E0, 0x7F8, 0xA14, 0x140A, 
  207. 0x140A, 0x14, 0x28, 0xF0, 
  208. 0x140, 0x140, 0x140, 0x140, 
  209. 0x0, 0x140, 0x3E0, 0x140, 
  210. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  211. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  212. 0x1E0, 0x7F8, 0xA14, 0x140A, 
  213. 0x140A, 0x14, 0x28, 0xF0, 
  214. 0x140, 0x140, 0x140, 0x140, 
  215. 0x0, 0x140, 0x3E0, 0x140, 
  216. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  217. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  218. 0x60, 0x198, 0x204, 0x402, 
  219. 0x402, 0x4, 0x8, 0x30, 
  220. 0x40, 0x40, 0x40, 
  221. 0x40, 0x0, 0x40, 0x60, 0x40 
  222. };
  223.  
  224. /* amöbe  */
  225. USHORT data7[] = {
  226. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  227. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  228. 0xFFFF, 0xDFFF, 0x8FFF, 0xDFF7, 
  229. 0xFFE3, 0xFFE3, 0xFBF7, 0xF1FF, 
  230. 0xFBFF, 0xFFFF, 0x7FFF, 0x3FFE, 
  231. 0x3FFE, 0x3F9E, 0x7F0F, 0xFF9F, 
  232. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  233. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  234. 0xFFFF, 0xDFFF, 0x8FFF, 0xDFF7, 
  235. 0xFFE3, 0xFFE3, 0xFBF7, 0xF1FF, 
  236. 0xFBFF, 0xFFFF, 0x7FFF, 0x3FFE, 
  237. 0x3FFE, 0x3F9E, 0x7F0F, 0xFF9F, 
  238. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  239. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  240. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  241. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 
  242. };
  243.  
  244. /* leiter  */
  245. USHORT data8[] = {
  246. 0xE007, 0xFFFF, 0xFFFF, 0xFFFF, 
  247. 0xE007, 0xE007, 0xFFFF, 0xFFFF, 
  248. 0xFFFF, 0xE007, 0xE007, 0xFFFF, 
  249. 0xFFFF, 0xFFFF, 0xE007, 0xE007, 
  250. 0xE007, 0xFFFF, 0xFFFF, 0xFFFF, 
  251. 0xE007, 0xE007, 0xFFFF, 0xFFFF, 
  252. 0xFFFF, 0xE007, 0xE007, 0xFFFF, 
  253. 0xFFFF, 0xFFFF, 0xE007, 0xE007, 
  254. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  255. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  256. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  257. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  258. 0xE007, 0xFFFF, 0xFFFF, 0xFFFF, 
  259. 0xE007, 0xE007, 0xFFFF, 0xFFFF, 
  260. 0xFFFF, 0xE007, 0xE007, 0xFFFF, 
  261. 0xFFFF, 0xFFFF, 0xE007, 0xE007, 
  262. 0x2001, 0x3FF9, 0x1, 0x1, 
  263. 0x2001, 0x2001, 0x3FF9, 0x1, 
  264. 0x1, 0x2001, 0x2001, 0x3FF9, 
  265. 0x1, 0x1, 0x2001, 0x2001 
  266. };
  267.  
  268. /* gift  */
  269. USHORT data9[] = {
  270. 0x0, 0x0, 0x0, 0x0, 
  271. 0x0, 0xFFFF, 0xFFFF, 0xFFFF, 
  272. 0xFFFF, 0xFFFF, 
  273. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  274. 0x3333, 0x3333, 0xFFFF, 0xFFFF, 
  275. 0xFFFF, 0x201, 0x201, 0x201, 
  276. 0x201, 0xFFFF, 
  277. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  278. 0x3333, 0x3333, 0xFFFF, 0xFFFF, 
  279. 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 
  280. 0xFFFF, 0xFFFF, 
  281. 0x0, 0x0, 0x0, 0x0, 
  282. 0x0, 0x0, 0x3333, 
  283. 0x3333, 0xFFFF, 0xFFFF, 0xFFFF, 
  284. 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 
  285. 0xFFFF, 0x0, 
  286. 0x0, 0x0, 0x0, 0x0, 0x0, 
  287. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  288. 0x0, 0x0, 0x0, 0x0, 
  289. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  290. 0x1111, 0x1111, 0x8888, 0x8888, 
  291. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
  292. 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 
  293. }; 
  294.  
  295. /* door(open)  */
  296. USHORT data17[] = {
  297. /* Plane Nr. 0 */
  298. 0xC3FF, 0x9C01, 
  299. 0x9FE1, 0x9FFD, 
  300. 0x9FFD, 0x9FFD, 
  301. 0x9FFD, 0x9FFD, 
  302. 0x9FFD, 0x9FFD, 
  303. 0x9FFD, 0x9FFD, 
  304. 0x9FFD, 0x9FE1, 
  305. 0xDC1F, 0xC3FF, 
  306. /* Plane Nr. 1 */
  307. 0xC3FF, 0x8001, 
  308. 0x8001, 0x8001, 
  309. 0x8001, 0x8001, 
  310. 0x8001, 0x8601, 
  311. 0x8801, 0x8001, 
  312. 0x8001, 0x8001, 
  313. 0x8001, 0x8001, 
  314. 0x8001,